package com.ruralflow.flow.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruralflow.common.annotation.Excel;
import com.ruralflow.common.core.domain.BaseEntity;

/**
 * 通行证概览对象 tb_flow_pass
 * 
 * @author ruralflow
 * @date 2025-02-20
 */
public class FlowPass extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long passId;

    /** 流动申请ID */
    @Excel(name = "流动申请ID")
    private Long applyId;

    /** 通行证编号 */
    @Excel(name = "通行证编号")
    private String passCode;

    /** 通行证状态 */
    @Excel(name = "通行证状态")
    private String passStatus;

    /** 通行证生效时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "通行证生效时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date passStartTime;

    /** 通行证失效时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "通行证失效时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date passEndTime;

    /** 删除标记：0正常，1已删除 */
    private String delFlag;

    public void setPassId(Long passId) 
    {
        this.passId = passId;
    }

    public Long getPassId() 
    {
        return passId;
    }
    public void setApplyId(Long applyId) 
    {
        this.applyId = applyId;
    }

    public Long getApplyId() 
    {
        return applyId;
    }
    public void setPassCode(String passCode) 
    {
        this.passCode = passCode;
    }

    public String getPassCode() 
    {
        return passCode;
    }
    public void setPassStatus(String passStatus) 
    {
        this.passStatus = passStatus;
    }

    public String getPassStatus() 
    {
        return passStatus;
    }
    public void setPassStartTime(Date passStartTime) 
    {
        this.passStartTime = passStartTime;
    }

    public Date getPassStartTime() 
    {
        return passStartTime;
    }
    public void setPassEndTime(Date passEndTime) 
    {
        this.passEndTime = passEndTime;
    }

    public Date getPassEndTime() 
    {
        return passEndTime;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("passId", getPassId())
            .append("applyId", getApplyId())
            .append("passCode", getPassCode())
            .append("passStatus", getPassStatus())
            .append("passStartTime", getPassStartTime())
            .append("passEndTime", getPassEndTime())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("remark", getRemark())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
